<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use App\Http\Controllers\ToolsController as Tools;
use App\Http\Controllers\FileSystemController as FileSystem;
use App\Models\Home\Client;
use App\Models\Home\Frame;
use App\Models\Home\Users;
use App\Models\Home\Branch;
use App\Models\Home\Part;
use App\Models\Home\Recruit;
use App\Models\Home\Position;
use App\Models\Home\Resume;
use App\Models\Home\Deliver;
use App\Models\Home\Finance;
use App\Models\Home\FinanceSchedule;
use App\Models\Home\DeliverSchedule;
use App\Models\Home\Wages;
use App\Models\Home\Knowledge;
use App\Models\Home\Notice;
use App\Models\Home\PositionClass;
use App\Models\Home\DownloadLog;
use App\Models\Home\LoginLog;
use App\Models\Home\Config;

class ModelServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap services.
     *
     * @return void
     */
    public function boot()
    {
        //
    }

    /**
     * Register services.
     *
     * @return void
     */
    public function register()
    {
        $this->app->bind('tools',function(){
            return new Tools();
        });
        $this->app->bind('file_system',function(){
            return new FileSystem();
        });
        $this->app->bind('client',function(){
            return new Client();
        });
        $this->app->bind('users',function(){
            return new Users();
        });
        $this->app->bind('frame',function(){
            return new Frame();
        });
        $this->app->bind('branch',function(){
            return new Branch();
        });
        $this->app->bind('part',function(){
            return new Part();
        });
        $this->app->bind('recruit',function(){
            return new Recruit();
        });
        $this->app->bind('position',function(){
            return new Position();
        });
        $this->app->bind('resume',function(){
            return new Resume();
        });
        $this->app->bind('deliver',function(){
            return new Deliver();
        });
        $this->app->bind('finance',function(){
            return new Finance();
        });
        $this->app->bind('finance_schedule',function(){
            return new FinanceSchedule();
        });
        $this->app->bind('deliver_schedule',function(){
            return new DeliverSchedule();
        });
        $this->app->bind('wages',function(){
            return new Wages();
        });
        $this->app->bind('knowledge',function(){
            return new Knowledge();
        });
        $this->app->bind('notice',function(){
            return new Notice();
        });
        $this->app->bind('position_class',function(){
            return new PositionClass();
        });
        $this->app->bind('download_log',function(){
            return new DownloadLog();
        });
        $this->app->bind('login_log',function(){
            return new LoginLog();
        });
        $this->app->bind('conf',function(){
            return new Config();
        });
    }
}
